<!DOCTYPE html>
<html>
<head>
    <style>
    td
    {
        width: 50px;
    }
    tr
    {
        height: 40px;
    }
    table.small tr
    {
        height: 20px;
    }

    table tr.filler
    {
        height: auto;
    }
    </style>
    <script src="../../resources/js-test.js"></script>
</head>
<body>
    <div style="height: 300px">
        <table border="1" style="height: 100%">
            <tr id="firstRow"><td></td></tr>
            <tr class="filler"><td></td></tr>
        </table>
    </div>
    <script>
    var smallRows = false;

    function toggleSmallRows()
    {
        var table = document.querySelector("table")
        smallRows = !smallRows;
        if (smallRows)
            table.classList.add("small");
        else
            table.classList.remove("small");
    }

    description("Regression(99212): table rows get incorrect height after changing some cells' height<br>https://bugs.webkit.org/show_bug.cgi?id=74303");

    firstRow = document.getElementById("firstRow");
    // Original value.
    shouldBe("getComputedStyle(firstRow, '').getPropertyValue('height')", "'40px'");

    toggleSmallRows();
    shouldBe("getComputedStyle(firstRow, '').getPropertyValue('height')", "'20px'");
    toggleSmallRows();
    shouldBe("getComputedStyle(firstRow, '').getPropertyValue('height')", "'40px'");
    </script>
</body>
</html>
